테마 지원은 ahawiki-theme localStorage key와 html.theme-* class를 중심으로 구현되어 있다.
현재 지원하는 테마는 다음 두 가지다.
완료된 작업은 다음 범위다.
[[Themes]] 매크로로 테마 토큰을 시각적으로 점검할 수 있게 함남은 작업은 새 UI를 추가할 때의 검증과 유지보수다.
[[Themes]] 매크로와 이 문서를 함께 갱신한다.system 테마는 아직 후속 범위다.LocalStorage에 테마 문자열을 저장한다.
localStorage key: ahawiki-theme values: ahawiki-light ahawiki-dark
HTML에는 선택된 테마를 class로 부여한다.
<html class="theme-ahawiki-light"> <html class="theme-ahawiki-dark">
기본값은 theme-ahawiki-light다.
테마 색상은 Less 변수가 아니라 CSS custom properties로 정의한다.
색상 팔레트는 --hue 하나로 만든다. 계정 메뉴의 슬라이더가 ahawiki-hue 로 localStorage 에 저장하고 <html> 의 --hue 에 넣는다. 없으면 사이트 기본값(contextSite.defaultHue, 그것도 없으면 220)이다.
이번 범위에서 제외하는 것:
prefers-color-scheme 자동 연동system 테마 추가